Directing contacts between an end user and a contact center agent

ABSTRACT

Many types of contact center are arranged such that communications between contact center agents and customers or other end users are contingent upon, or dependent upon, successful operation of the contact center itself. However, if the contact center is not working for any reason, contacts cannot be directed between agents and end users. This is addressed by directing contacts between an end user and contact center agents,.without the need for operation of the contact center itself. In order to achieve this a plurality of associations between contact center agent addresses and the contact center address are made, stored and prioritised at a communications network node.

FIELD OF THE INVENTION

The present invention relates to a method and apparatus for directing acontact between an end user and a contact center agent, without the needfor operation of the contact center itself.

BACKGROUND TO THE INVENTION

Call centers are known in which incoming calls are routed to one of aplurality of agents. For example, the call center might provide helpdesk facilities for a particular group of products. Customers are ableto call in and be allocated to an agent who has the necessary skills todeal with the customer's query. Each agent has one or more skills, forexample, a particular agent has knowledge about sales for product X andabout technical support for product Y. An incoming call is received andinformation from that call used by the call center, together withinformation about the agents, in order to route the incoming call to anagent with the appropriate skill. For example, an interactive voiceresponse system (IVR system) may be used to find out what type of agentskill is required. Associated with each skill is a queue into whichincoming calls are placed until an agent with that skill becomesavailable.

The terms “call center” and “contact center” as used herein are notintended to be restricted to situations in which telephone calls aremade to the center. Other types of call or contact are also envisaged,such as email, fax, SMS, chat, web access, video access and any othersuitable method of contact including conventional telephone calls andvoice over internet protocol telephone calls. Similarly, the terms“call” and “contact” as used herein are not intended to be restricted toconventional telephone calls but include contacts made by email, fax,voice over IP and any other suitable medium.

Many types of contact center are arranged such that communicationsbetween contact center agents and customers or other end users arecontingent upon, or dependent upon, successful operation of the contactcenter itself. For example, in many known contact centers a publicbranch exchange (PBX) is associated with the contact center. The contactcenter uses the PBX to transfer incoming calls to particular contactcenter agent queues that it selects. In this way calls between contactcenter agents and customers or end users are controlled by the contactcenter which is able to monitor status of the contact center agents todetermine whether they are busy on calls, logged in or logged out etc.and to provide reports. However, if the contact center is not workingfor any reason, contacts cannot be directed between agents and endusers.

Contact centers are also known which deal with other media types of callsuch as email, video, voice over internet protocol, and others. Again,for these types it is typical for the contact center itself to controlcommunications between the contact center agents and the customers orend users. This is typically achieved in such a way that if the contactcenter is not working for any reason contacts cannot be directed betweenagents and end users.

Previously this problem has been addressed by using a fall back contactcenter which mirrors the main contact center itself. In the event thatthe main contact center is not working for any reason, the fall backcontact center is able to take over and direct contacts. However, thisis an expensive option because two contact centers need to be provided,ideally at different geographical locations, to reduce the likelihood ofboth centers being impacted at the same time. There is also the need toensure that the fall back contact center is always up to date with thecurrent status of the main contact center. Achieving that mirroring ofdata is a complex problem that also takes up network capacity that couldotherwise be used for other traffic.

Another approach has been to use a conventional automatic calldistribution (ACD) system as a fall back. A conventional ACD system istypically less expensive than providing a complete mirrored contactcenter. This approach is suitable for call centers using an associatedPBX and it allows contacts to be automatically directed to contactcenter agents in the event that the contact center itself is notoperating. However, conventional ACD systems are not suitable forhandling all media types such as voice over internet protocol contacts,email contacts, video contacts and others. In that case fallback ACDsystems cannot be used.

Another option is to simply forward all incoming contacts to a recordedannouncement system asking the customers to call back later, or to amusic on hold system or similar. However, this is not satisfactory forcustomers and leads to loss of business for the contact center.

OBJECT TO THE INVENTION

The invention seeks to provide an improved method and apparatus fordirecting a contact between an end user and a contact center agent,without the need for operation of the contact center itself.

The invention also seeks to provide an improved method and apparatus fordirecting a contact between an end user and a contact center agent whichovercomes or at least mitigates one or more of the problems noted above.

Further benefits and advantages of the invention will become apparentfrom a consideration of the following detailed description given withreference to the accompanying drawings, which specify and show preferredembodiments of the invention.

SUMMARY OF THE INVENTION

Many types of contact center are arranged such that communicationsbetween contact center agents and customers or other end users arecontingent upon, or dependent upon, successful operation of the contactcenter itself. However, if the contact center is not working for anyreason, contacts cannot be directed between agents and end users. Thisis addressed by directing contacts between an end user and contactcenter agents, without the need for operation of the contact centeritself. In order to achieve this a plurality of associations betweencontact center agent addresses and the contact center address are made,stored and prioritised at a communications network node.

According to an aspect of the invention there is provided a method ofdirecting a contact between an end user and a contact center agent,without the need for operation of the contact center itself; said methodcomprising:

-   -   recording a plurality of associations between addresses of        contact center agents and an address of the contact center at a        node in a communications network, the end user and contact        center agent having access to that communications network;    -   prioritising said plurality of associations;    -   on the basis of the highest priority of said plurality of        associations, directing a contact between an end user of the        contact center and a contact center agent and, if this operation        fails, making said direction on the basis of the next highest        priority of said plurality of associations.

This provides the advantage that should the contact center be out ofaction for any reason it is still possible to direct customer contactsto contact center agents, or for those contact center agents toproactively initiate contacts. This is achieved in a simple and costeffective manner without the need for mirroring of the contact centeritself. Also, by suitable prioritisation of the associations, customercontacts can be directed to contact center agents in a prespecifiedmanner rather than at random, on a trial and error basis, or on a firstcome first served basis. This improves customer service in the eventthat the contact center itself is out of action, for example, forrepair, upgrade or other reasons.

In a particular embodiment the direction of contacts between user andagent is otherwise contingent upon operation of the contact center. Forexample, the contact center is arranged as a pass through proxy or backto back user agent with respect to the contact center agent endpoints.In this situation the contact center is able to monitor and keep tabs onthe status of the contact center agent endpoints. However, if thecontact center is not available for any reason, contacts could not bedirected to or from the contact center agent endpoints if it were notfor the method of the present invention being implemented.

In a preferred embodiment a plurality of addresses are formed for saidcontact center, each address associated with a skillset, and anassociation is formed between each of those addresses and locationdetails of said contact center. For example, these addresses areprovided to end users or customers who can then direct their contacts toparticular ones of those addresses depending on the skillset required.This provides improved service for customers and reduces the burden onthe contact center of determining which skillset is most appropriate.

In another embodiment the method further comprises recording at saidnode an association between an address of a contact center treatmentsystem and location details of said contact center. For example, saidcontact center treatment system is selected from any of an interactivevoice response (IVR) system, a music on hold system and a recordedannouncement system. In this way, contacts can be directed automaticallyto the treatment system in the even that the contact center itself isunavailable. The treatment system is preferably arranged to forward thecontacts to contact center agent endpoints after it has appliedtreatment to the contact.

Preferably the node at which the plurality of associations are recordedis a registrar according to session initiation protocol (SIP). Thisprovides the advantage that existing equipment can be used to providethis function.

The invention also encompasses a communications network arranged tocarry out the method described above. Advantageously, saidcommunications network is a data communications network selected from asession initiation protocol network, an H.323 network and a voice overinternet protocol network.

According to another aspect of the present invention there is provided acontact center arranged to form a plurality of associations betweencontact center agent endpoints and an address of the contact centeritself; said contact center comprising:

-   -   an input arranged to receive registration requests from the        contact center agent endpoints, each registration request        comprising information about the location of a contact center        agent endpoint;    -   a processor arranged to modify the registration requests by        adding information about the location of the contact center        itself;    -   an output arranged to forward the modified registration requests        to a registration node in a communications network; and    -   wherein said processor is further arranged to create additional        registration requests and forward those to the registration node        such that, for a given address of the contact center, a        plurality of registration requests are made, each registration        request being to create an association between an address of a        contact center agent endpoint and that address of the contact        center.

This provides the advantage that multiple registrations are formed forone address of the contact center. These multiple registrations enablecontacts to be forwarded to and from contact center agent endpoints inthe event that the contact center itself is unavailable.

Preferably the processor is further arranged to prioritise thoseregistration requests relating to a particular address of the contactcenter. This provides the advantage that contacts can be forwarded in aprespecified manner in the event that the contact center is unavailableand this improves customer service. The prespecified manner is arrangedsuch that the most appropriate contact center agents are chosen first.

The invention also encompasses a corresponding method of forming aplurality of associations between contact center agent endpoints and anaddress of the contact center itself; said method comprising the stepsof:

-   -   receiving registration requests from the contact center agent        endpoints, each registration request comprising information        about the location of a contact center agent endpoint;    -   modifying the registration requests by adding information about        the location of the contact center itself;    -   forwarding the modified registration requests to a registration        node in a communications network;    -   creating additional registration requests and forwarding those        to the registration node such that, for a given address of the        contact center, a plurality of registration requests are made,        each registration request being to create an association between        an address of a contact center agent endpoint and that address        of the contact center.

Preferably the method further comprises prioritising those registrationrequests relating to a particular address of the contact center.

The invention also encompasses a computer program arranged to control acontact center in order to carry out the method described above.

According to another aspect of the invention there is provided acommunications network comprising a contact center as described above.

The invention also encompasses a contact center arranged to form aplurality of associations between contact center agent endpoints and anaddress of the contact center itself; said contact center comprising:

-   -   means for receiving registration requests from the contact        center agent endpoints, each registration request comprising        information about the location of a contact center agent        endpoint;    -   means for modifying the registration requests by adding        information about the location of the contact center itself;    -   means for forwarding the modified registration requests to a        registration node in a communications network; and    -   means for creating additional registration requests and        forwarding those to the registration node such that, for a given        address of the contact center, a plurality of registration        requests are made, each registration request being to create an        association between an address of a contact center agent        endpoint and that address of the contact center.

The preferred features may be combined as appropriate, as would beapparent to a skilled person, and may be combined with any of theaspects of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to show how the invention may be carried into effect,embodiments of the invention are now described below by way of exampleonly and with reference to the accompanying figures in which:

FIG. 1 is a schematic diagram of a communications network with a systemfor directing contacts without the need for operation of a contactcenter;

FIG. 2 is a flow diagram of a method of directing contacts without theneed for operation of a contact center;

FIG. 3 is a flow diagram of a method of operation of a contact center.

DETAILED DESCRIPTION OF INVENTION

Embodiments of the present invention are described below by way ofexample only. These examples represent the best ways of putting theinvention into practice that are currently known to the Applicantalthough they are not the only ways in which this could be achieved.

As mentioned above, many types of contact center are arranged such thatcommunications between contact center agents and customers or other endusers are contingent upon, or dependent upon, successful operation ofthe contact center itself. For example, in order that the contact centercan continually monitor the status of its associated agents, the contactcenter itself is often an essential requirement for a communicationsession to be established between a contact center agent and anotherparty. A prior art example of this is the use of a so called “firstparty call control model” in a session initiation protocol (SIP) enabledcontact center. Details of this type of contact center and its use aredescribed in earlier U.S. patent application Ser. No. 09/589,326 filedon Jun. 2, 2000 which is also assigned to Nortel Networks Limited andthe contents of which are hereby incorporated by reference. Although theexample below is specific to SIP other suitable protocols could be usedsuch as H.323 and the invention encompasses use of any such suitableprotocols.

As known in the art, SIP is a protocol that can be used to set upcommunication sessions over a packet data network where thosecommunication sessions are for voice, video, instant messaging (IM) orother suitable media. This is often referred to as “voice over internetprotocol” (VoIP) although the communication sessions are not limited tovoice. A SIP enabled contact center is thus able to handle contactsreceived over a SIP data network and these may be of many differentmedia types. SIP is defined in IETF RFC 3261, and other relevant SIPrelated IETF RFCs.

FIG. 1 is a schematic diagram of a SIP enabled contact center in acommunications network. The contact center comprises a server 10connected via a SIP data communications network 11 to a plurality of SIPenabled agent terminals 12. The communications network 11 can be anenterprise network that is connected to another data network 14 such asthe Internet or a company-wide Intranet. The enterprise network 11 maybe private with respect to the other data network 14 and in that casenetwork address translators are used as known in the art. That is, forreasons of clarity, only those components of the SIP contact center andnetworks needed for explaining the invention are shown in FIG. 1. Othercomponents are used as known to the skilled person in the art.

The contact center server 10 acts to receive contacts from end users 18connected to it via the SIP data network 14. These contacts aredistributed to appropriate agents 12 by the entry system of the contactcenter server 10. The contact center optionally also uses a SIP mediaserver 13 which is used to provide additional functionality for thecontact center entry system. For example, this can be music-on-hold,recorded announcements or interactive voice response as known in theart. In FIG. 1 the media server 13 is shown as a physical block being aseparate entity from the contact center server 10. However, this is notessential. A single server configuration can also be used in which themedia server, contact center entry system, contact center server, SIPregistrar and SIP proxy are provided using a single server. Thus themedia server 13 as represented in FIG. 1 is either a physical or logicalblock. It is also possible for the media server 13 to be provided by adifferent party than that providing the contact center 10.

The SIP data network also comprises a SIP proxy or redirect server 15and a SIP registration 16 and location 17 server as known in the art.Although only one of each of these items is illustrated others may bepresent in the data network 14. It is not essential for the SIPregistration and location server to be provided at the same entity,these items may be separate as known in the art.

Any or all of the media server 13, proxy server 15, redirect server,registrar 16 and location server 17 may be provided by third parties.SIP Endpoints as represented by the contact center agent terminationpoint could also be third party.

As mentioned above SIP is defined in IETF RFC 3261 and other RFCs andcomprises various different types of entity including SIP endpoints, SIPregistrars, SIP location servers and SIP proxy or redirect servers. Theway in which these entities are applied in the present embodiment is nowdescribed.

SIP Endpoints

SIP endpoints for the purposes of this embodiment are considered asintelligent stateful entities consisting of a SIP endpoint (Client) andSIP UAS (Server). SIP endpoints can terminate or originate SIP sessionswhich can contain user to user information (e.g. Instant Messaging) ornegotiation messaging to set up other parallel information streams (e.g.SDP). They can also terminate or originate Voice, Video or othermultimedia messaging streams or redirect these streams to other entitiesas negotiated potentially via the Session Description Protocol (SDP)information transported over SIP. SDP is variously covered by RFC3264and RFC2327.

In this embodiment SIP endpoints REGISTER their location as per RFC3261with a SIP Registrar 16 and have an identified Proxy 15 or redirectserver through which SIP sessions are passed for Address Resolution andother such functions.

SIP endpoint types for this architecture include: SIP Clients (theContact Center Agent User Interface 12); SIP Media Server 13 (the mediaand treatment response entity) the SIP contact center server 10, andoptionally, the customer's endpoint or terminal 18. However, asmentioned above it is not essential for the invention to be implementedusing SIP.

SIP Registrar 16

The SIP Registrar 16 is an entity to which the SIP endpoints sendREGISTER messages to identify their current location in the data network14. Generally the SIP Registrar 16 stores data in the location server(or is one and the same as the location server 17 as illustrated in FIG.1). A further requirement of the SIP Registrar is generally to provideauthentication services for the SIP user 18 (confirm user is configuredand validates user password). Various authentication services are commonincluding HTTP Digest (RFC2069 and RFC2617).

As explained in RFC3261 a register request can be used to add, removeand query bindings. In the present embodiment, these bindings are usedto form an association between selected agents and addresses of thecontact center server 10. A register request can be used to add abinding between one or more contact addresses and an address of record.A “SIP address of record” (AOR), as defined in RFC3261, is a SIP or SIPUniversal Resource Indicator (URI) that points to a domain with alocation service that can map the URI to another URI where the usermight be available. Typically, the location service is populated throughregistrations. An AOR is frequently thought of as the “public address”of the user.

This registration process can be performed by a suitably authorisedthird party on behalf of a particular address of record. In theembodiment being described, the suitably authorised third party is thecontact center server 10. It is also possible for a SIP client to removeexisting bindings or query to find out which bindings currently existfor an address of record.

SIP Location Server 17

The location server 17 stores information that assists in resolving aUser's Address of Record URI to an actual location that a User iscurrently Registered at. A SIP proxy or redirect server is able to inputa URI to the location server and obtain details of any associated URIsto which to send a request. The information accessible to the locationserver is either obtained as a result of registrations made at theRegistration Server or may be mapping functions configured at thedirection of an administrator.

SIP Proxy or Redirect Server 15

This provides redirect or forwarding services for SIP sessions. Ifentity A wishes to initiate a session with entity B it can use SIPProxies to resolve the location of the endpoint and move the request“closer” to entity B until such time as the Proxy nearest entity Bpresents the session directly to it.

A high level description of prior art establishment of a communicationsession in a SIP contact center is now given. This is a so called “firstparty call control model” and as mentioned above, one problem with thistype of method is that when the contact center itself isnon-operational, it is not possible to direct contacts between end usersand the contact center agents.

In order that the contact center 10 is able to monitor the status of itsassociated contact center agents 12 the contact center 10 is used as a“pseudo” proxy server. That is the contact center 10 is arranged to beactive on the signalling path of all contact center agent 12 calls,incoming or outgoing. As known to the skilled person, control signalsare sent between entities in a SIP data network to negotiate and set upa communications session which is then used to for a media stream suchas a voice call, video session or other. The contact center 10 isarranged to be active on the path that these control signals take inorder that the contact center 10 can keep tabs on the activity of itsassociated agents 12. The media stream itself may take a different routefrom the control signals through the network between the contact centeragent and end user.

When a SIP endpoint makes a request to initiate a communications sessionto a called party it sends this request to its prespecified, defaultproxy or redirect server. That proxy or redirect server accesses bindinginformation from a registrar and uses that binding information toforward the request towards the called party. By making appropriateregistrations at the registrar it is ensured that all requests toinitiate communications to or from the contact center agents 12 areforwarded via the contact center server 10. In addition, the SIPendpoints of the contact center agents 12 are configured to point to thecontact center 10 as their default proxy server. This process is knownin the art as mentioned above. The contact center server 10 is referredto as acting as a “pass-through proxy” or as a Back to Back User Agent(BBUA).

In order to make the appropriate registrations at the registrar, the SIPendpoints of the contact center agents 12 are configured to send theirRegister requests to the contact center server 10. The contact centerserver 10 then modifies these Register requests to mandate the insertionof the contact center server 10 itself in all SIP calls directed to thecontact center agents 12. This is done by modifying the contact headeror path header of the SIP Register messages as known in the art. Afterappropriate modification, the contact center server 10 passes on the SIPRegister message to the actual Registrar 16 and associated proxy server15.

As a result the contact center server 10 needs to be operational inorder for communication sessions to be set up between contact centeragents 12 and other entities in the network. If the contact centerserver 10 is not available for any reason, such as a fault or becausethe server is taken off-line for maintenance or upgrade, then thecontact center agents 12 are unable to participate in communicationsessions even though they would otherwise be able to. The presentinvention enables contacts to be directed to or from the contact centeragents 12 without the need for the contact center server 10. As well asthis there is a need to provide a fall-back provision for at least partof the primary role of the contact center. The primary role of thecontact center is considered to be resolution of the requirements ofincoming contacts to particular skillsets and locating idle agentswithin those skillsets to which the contacts can be directed. This isachieved by recording a plurality of associations between contact centeragent addresses and addresses of the contact center server 10 andprioritising those associations.

With reference to FIG. 2, a plurality of associations between contactcenter agent addresses and addresses of the contact center server 10 arerecorded (see box 20) at a registrar in a communications network (forexample, item 16 in FIG. 1). Those associations are prioritised (see box21 of FIG. 2).

As mentioned above, when a SIP endpoint issues a communication request,such as a contact to the contact center server, this request is sent tothe default proxy server associated with the SIP endpoint. The proxyserver requests association information from the registrar in order todecide where to forward the contact on its journey towards itsdestination (for example, the destination is a contact center agent oran end user). This association information is also referred to as abinding. In the present invention, a plurality of bindings are providedassociated with one or more addresses of the contact center server 10.

The contact center server registers its own address (such as its uniqueinternet protocol (IP) address) against one or more SIP addresses ofrecord such as sales@cc.nortelnetworks.com. End users or customerswishing to contact the contact center use any of these SIP addresses ofrecord and the association information is used to forward the contact tothe actual contact center server 10 (see box 22 of FIG. 2).

This association between the contact center server's own address and SIPaddress(es) of record are given highest priority. Other associations arealso registered at the registrar between the SIP addresses of record ofthe contact center and IP addresses of the contact center agents. Thoseassociations are prioritised.

If a proxy or redirect server uses a highest priority association toforward a contact to or from the contact center server 10 and thatoperation fails, the next highest priority association is used (see box23 of FIG. 2).

In one embodiment the contact center server 10 registers one or moreaddresses for itself which it uses to partition incoming contacts intohigh level applications or skillsets (for example,sales@cc.nortelnetworks.com; support@cc.nortelnetworks.com). End usersor customers are aware of these addresses and are able to direct theircontacts to those as appropriate. For example, a customer with a salesquery uses the sales@cc.nortelnetworks.com address. Contact center agentaddresses are associated with these addresses and prioritised asdescribed above. In that way, even when the contact center server 10 isout of action, a customer is able to direct a contact to a contactcenter address and be forwarded to a particular agent using theprioritised associations. The priority is advantageously arranged suchthat the most skilled agent for a skillset will be offered the contactfirst, followed by the next most skilled agent and so on. The prioritysystem can be configured in other ways as required by the contact centerprovider.

In the case that the contact center server 10 registers only one addressfor itself this address can be thought of as a generic skillset againstwhich all contact center agents are sequentially registered. If thecontact center server 10 registers two or more skillset addresses foritself (such as sales@cc.nortelneteworks.com andsupport@cc.nortelnetworks.com) then each contact center agent issequentially registered against one or more of those skillset addresses.

In a preferred embodiment SIP protocol is used as mentioned above and inthat case the plurality of associations and their prioritisation isachieved by making use of existing facilities within the SIP protocol.That is, no modification to the existing SIP protocol is required.

As mentioned above, SIP provides the ability to make registrations at aregistrar. REGISTER requests are used to add, remove and query bindingsand thus are used in this embodiment to make the associations betweenthe contact center agent addresses and the secondary contact centeraddresses. REGISTER requests can be made by a suitably authorised thirdparty and so in this embodiment, the contact center server is arrangedto make REGISTER requests on behalf of the contact center agentendpoints 12.

SIP also allows that once a SIP endpoint has established bindings at aregistrar, it may send subsequent registrations containing new bindingsor modifications to existing bindings. This enables the contact centerserver 10 to make multiple registrations for a given contact centeragent endpoint. These multiple registrations enable the priority ofassociations to be set up. This is advantageous because priorityinformation that is typically inherent in internal contact center queuesis at least partly captured and used for “fall back” situations when thecontact center itself is unavailable. That priority information from thecontact center is effectively being captured by dynamically forming aSIP (or other protocol) queue at the proxy server or other network node.

In order to prioritise the associations, an existing SIP mechanism isexploited whereby a parameter within a SIP message is used. Theparticular parameter chosen is the “q” parameter of the SIP contactheader field. This “q” parameter is used to indicate a relativepreference for the particular contact header field value compared toother bindings for this address-of-record. This mechanism exists in theSIP protocol to allow users to register multiple endpoints, such as ahome computer, work computer, and mobile handset, against a single SIPaddress of record. These bindings are prioritised in order that a proxyserver can use the preference indication to determine which binding touse in a particular situation. The present invention takes this existingmechanism and uses it in association with a contact center system asdescribed herein. Advantageously no modifications to the SIP protocolitself are required.

A particular example of a method carried out by a SIP enabled contactcenter server 10 is now described with reference to FIGS. 1 and 3.Details of the registration are held at the location server 17 inconjunction with the registrar 16 as known in the art. The default proxyserver for the contact center server 10 is preconfigured and in thisexample is proxy 15 of FIG. 1.

Preferably the contact center server 10 also registers its own IPaddress against one or more SIP address of records, also referred to asskillset specific URIs (universal resource indicators) such assales@cc.nortelnetworks.com and support@cc.nortelnetworks.com.

Contact center agents at the contact center have SIP enabled endpoints12 and these are configured such that their default proxy server is thecontact center server 10 itself. Because of this, the contact centerserver receives any register requests issued by the contact center agentSIP endpoints. For example, such register requests are madeautomatically by the SIP endpoints 12 on start up and optionally also atother times.

These register requests contain details of the location of the contactcenter agent SIP endpoint which made the request. These location detailscan comprise for example, an IP address, a conventional telephone numbera DNS (network name address), a SIP or SIPS URI of the endpoint. (SIPSdenotes secure SIP which involves carrying all SIP information over anencrypted transport mechanism.) The location details are stored in a SIPcontact header which forms part of the register request.

The contact center agent's SIP endpoint issues the register request andthat is forwarded to the default proxy server, which in this case is thecontact center server 10 as mentioned above.

When the contact center server 10 receives the register request itmodifies that request before forwarding it on to the actual registrar16. This modification ensures that the location details of the contactcenter agent endpoint are changed or replaced by location details of thecontact center server 10 itself.

Any suitable method of modifying the location details can be used. Forexample, the contact header information is changed by replacing thecurrent details of the location of the contact center agent with the SIPaddress of record of the contact center server 10. In this case thecontact center server 10 stores the original contact header informationcontaining the location details for the contact center agent endpoint.That original information can then be used to direct contacts to thatagent.

Alternatively, instead of modifying the contact header information, apath header is added as specified in IETF RFC 3327.

If a particular agent is a member of more than one skillset, that agentis able to register at least once for each skillset that it is a memberof. For example, if an agent is a member of skillset sales, then thatagent can send a first registration request which will be formed inrespect of a skillset address of the contact center server 10 such assales@cc.nortelnetworks.com. The agent can also be registered againstany other relevant skillset URI's that the Contact Center is responsiblefor (or terminates).

Consider the situation in which the sales@cc.nortelnetworks.com addressof record has two addresses registered against it. These two addressesare that of the contact center itself and contact center agent endpointA. The registration in respect of the contact center address is givenhigher priority than that of the contact center agent endpoint A. Forexample, this is done using the SIP q parameter as described above.

Once the registration and prioritisation process has been completedcontacts can be directed to and from the contact center agents asfollows. A method of sending a contact from a customer endpoint 18 tothe contact center is first described in the case that the contactcenter server 10 is operational. The customer has access to the URIs forthe contact center such as sales@cc.nortelnetworks.com. Using one ofthese URIs the customer sends a contact into the contact center. Thecontact center server 10 then optionally uses the media server 13 totreat the incoming contact in any suitable known manner. For example,the media server may comprise an interactive voice response (IVR)system, recorded announcement system or other suitable treatment system.The contact center uses any results from the media server treatment ofthe contact to determine which agent or skillset to allocate the contactto. This process is known in the art. The contact center also optionallyretrieves any relevant customer data from its records including recordsof past transactions. When a suitable agent becomes available thecontact center forwards the contact to that agent together with anyrelevant retrieved information. The contact center agent handles thecontact and details of this are recorded as appropriate.

Consider the case that the contact center server 10 is not available forany reason. The customer dials sales@cc.nortelnetworks.com (for example)for service at the start. The proxy server 15 receives the request forcontact and forwards it on to that the highest priority addressassociated with sales@cc.nortelnetworks.com. However, because thecontact center server 10 is not available this operation fails or timesout. The proxy server 15 then tries the next highest priority addressregistered against the contact center URI sales@cc.nortelnetworks.com.In this example, the next highest priority address isagentA@cc.nortelnetworks.com.

As a result the contact center agent A receives the contact directlywithout the need for operation of the contact center server 10. Thisprovides the advantage that the customer is able to receive assistancefrom the agent who is in part, if not fully, pertinent to the customer'sservice request. This ensures a continuity of service even in the eventthat the contact center is not available for any reason. The fact thatthe contact center itself has failed to accept the contact istransparent to the customer because the customer's contact isautomatically forwarded to an agent.

In another embodiment an IVR system or other treatment system isregistered against the address of record for the contact center server10. In this way, when the contact center server 10 is not available,incoming contacts are automatically directed to the IVR or othertreatment system by the proxy server 15. For example, the IVR system isarranged to resolve the skillset that the customer wishes to interactwith and to forward the contact onto the relevant address of record forthe contact center (for example, sales@cc.nortelnetworks.com). When thecontact center is not available, the contacts are forwarded on to thenext highest priority address as described above.

A method of operating a contact center is now described with referenceto FIG. 3. The contact center receives registration requests from thecontact center agent endpoints. Each registration request comprisesinformation about the location of a contact center agent endpoint (seebox 31 of FIG. 3). The contact center then modifies the registrationrequests by adding information about the location of the contact centeritself (see box 32 of FIG. 3). The modified registration requests arethen forwarded to a registration node (see box 33 of FIG. 3). Thisenables the contact center to act as a pass through proxy or back toback user agent with respect to the contact center agent endpoints. Inaddition, the contact center creates additional registration requestsand forwards those to the registration node (see box 34 of FIG. 3).These created registration requests are arranged so that, for a givenaddress of the contact center, a plurality of registration requests aremade, each registration request being to create an association betweenan address of a contact center agent endpoint and that address of thecontact center.

As mentioned above any or all of the media server 13, proxy server 15,redirect server, registrar 16, location server 17 and contact centeragent endpoints may be provided by third parties. A particular advantageof the present invention, at least in some embodiments, is that theseentities remain unaware of the dynamic configuration the contact centerperforms on their behalf.

Another advantage is that priority information that is typicallyinherent in a contact center is used in the present invention tointelligently configure entities external to the contact center itself.

1. A method of directing a contact between an end user and a contact center agent, without the need for operation of the contact center itself; said method comprising: (i) recording a plurality of associations between addresses of contact center agents and an address of the contact center at a node in a communications network, the end user and contact center agent having access to that communications network; (ii) prioritising said plurality of associations; (iii) on the basis of the highest priority of said plurality of associations, directing a contact between an end user of the contact center and a contact center agent and, if this operation fails, making said direction on the basis of the next highest priority of said plurality of associations.
 2. A method as claimed in claim 1 wherein the direction of contacts between user and agent is otherwise contingent upon operation of the contact center.
 3. A method as claimed in claim 2 wherein the contingency is provided by arranging the contact center as either of a back to back user agent and a pass through proxy server.
 4. A method as claimed in claim 1 which further comprises forming a plurality of addresses for said contact center, each address associated with a skillset, and forming an association between each of those addresses and location details of said contact center.
 5. A method as claimed in claim 1 which further comprises recording at said node an association between an address of a contact center treatment system and location details of said contact center.
 6. A method as claimed in claim 4 wherein said contact center treatment system is selected from any of an interactive voice response (IVR) system, a music on hold system and a recorded announcement system.
 7. A method as claimed in claim 1 wherein said node at which the plurality of associations are recorded is a registrar according to session initiation protocol (SIP).
 8. A method as claimed in claim 1 wherein said communications network is a data communications network selected from a session initiation protocol network, an H.323 network and a voice over internet protocol network.
 9. A communications network arranged to carry out the method of claim
 1. 10. A contact center arranged to form a plurality of associations between contact center agent endpoints and an address of the contact center itself; said contact center comprising: (i) an input arranged to receive registration requests from the contact center agent endpoints, each registration request comprising information about the location of a contact center agent endpoint; (ii) a processor arranged to modify the registration requests by adding information about the location of the contact center itself; (iii) an output arranged to forward the modified registration requests to a registration node in a communications network; and (iv) wherein said processor is further arranged to create additional registration requests and forward those to the registration node such that, for a given address of the contact center, a plurality of registration requests are made, each registration request being to create an association between an address of a contact center agent endpoint and that address of the contact center.
 11. A contact center as claimed in claim 10 wherein said processor is further arranged to prioritise those registration requests relating to a particular address of the contact center.
 12. A contact center as claimed in claim 10 wherein said processor is arranged to form a plurality of addresses for said contact center, each address associated with a skillset.
 13. A contact center as claimed in claim 10 which is either of a pass through proxy server and a back to back user agent with respect to the contact center agent endpoints.
 14. A method of forming a plurality of associations between contact center agent endpoints and an address of the contact center itself; said method comprising the steps of: (ii) receiving registration requests from the contact center agent endpoints, each registration request comprising information about the location of a contact center agent endpoint; (iii) modifying the registration requests by adding information about the location of the contact center itself; (iv) forwarding the modified registration requests to a registration node in a communications network; (v) creating additional registration requests and forwarding those to the registration node such that, for a given address of the contact center, a plurality of registration requests are made, each registration request being to create an association between an address of a contact center agent endpoint and that address of the contact center.
 15. A method as claimed in claim 14 which further comprises prioritising those registration requests relating to a particular address of the contact center.
 16. A method as claimed in claim 14 which comprises forming a plurality of addresses for said contact center, each address associated with a skillset.
 17. A computer program arranged to control a contact center in order to carry out the method of claim
 14. 18. A communications network comprising a contact center as claimed in claim
 10. 19. A contact center arranged to form a plurality of associations between contact center agent endpoints and an address of the contact center itself; said contact center comprising: (ii) means for receiving registration requests from the contact center agent endpoints, each registration request comprising information about the location of a contact center agent endpoint; (iii) means for modifying the registration requests by adding information about the location of the contact center itself; (iv) means for forwarding the modified registration requests to a registration node in a communications network; and (v) means for creating additional registration requests and forwarding those to the registration node such that, for a given address of the contact center, a plurality of registration requests are made, each registration request being to create an association between an address of a contact center agent endpoint and that address of the contact center. 